// axios二次封装
import axios from "axios";
import { ElMessage } from "element-plus";

const request = axios.create({
    baseURL: '/api',    // 请求基础路径
    timeout: 5000,  // 超时时间
})

// 请求拦截器
request.interceptors.request.use((config)=>{

    return config;
})

// 响应拦截器
request.interceptors.response.use((response)=>{

    return response.data;
}, (error)=>{
    let status = error.response.status;
    switch(status) {
        case 404:
            ElMessage({
                type: 'error',
                message: error.message
            })
            break;
        case 401:
            ElMessage({
                type: 'error',
                message: "参数有误"
            })
            break;
        case 500|501|502|503|504|505:
            ElMessage({
                type: 'error',
                message: '服务器挂了'
            })
            break;
    }

    return Promise.reject(new Error(error));
})

export default request